import { NgModule } from '@angular/core';
import { CommonModule, PercentPipe, DecimalPipe, DatePipe } from '@angular/common';
import { NgxEchartsModule } from "ngx-echarts";
import { OneMapComponent } from "./one-map.component";
import { MapPanelComponent } from './map-panel/map-panel.component';
import { OneMapService } from './one-map.service';
import { OneMapRoutingModule } from './one-map-routing.module';
import { IconsProviderModule } from 'src/app/icons-provider.module';
import { NgZorroAntdModule } from 'ng-zorro-antd';
import { MapTreeComponent } from './map-tree/map-tree.component';
import { MapRegionComponent } from './map-region/map-region.component';
import { DialogDamComponent } from './dialog-dam/dialog-dam.component';
import { FormsModule, ReactiveFormsModule } from '@angular/forms';
import { DialogSectionComponent } from './dialog-section/dialog-section.component';
import { DialogPumpComponent } from './dialog-pump/dialog-pump.component';
import { DialogGateComponent } from './dialog-gate/dialog-gate.component';
import { ComponentsModule } from 'src/app/components/components.module';
import { UnifiedMapModule } from 'unified-map';
import { MapUiService } from './map-ui.service';
import { MapSearchComponent } from './map-search/map-search.component';
import { BaseInfoComponent } from './base-info/base-info.component';
import { MonitorComponent } from './monitor/monitor.component';
import { DialogInfoComponent } from './dialog-info/dialog-info.component';
import { DialogVideoComponent } from './dialog-video/dialog-video.component';
import { DialogIntakeComponent } from './dialog-intake/dialog-intake.component';
import { DialogPicsComponent } from './dialog-pics/dialog-pics.component';
import { PanelInfoComponent } from './panel-info/panel-info.component';
import { BaseLayerPickerComponent } from './base-layer-picker/base-layer-picker.component';
import { MonitorMajorComponent } from './monitor-major/monitor-major.component';
import { MonitorGateComponent } from './monitor-gate/monitor-gate.component';
import { MonitorPumpComponent } from './monitor-pump/monitor-pump.component';
import {IrrProjectComponent} from "./irr-project/irr-project.component";
import {IrrInfoComponent} from "./irr-info/irr-info.component";
import {DialogVideo2Component} from "./dialog-video2/dialog-video2.component";

@NgModule({
  imports: [
    CommonModule,
    FormsModule,
    ReactiveFormsModule,
    NgxEchartsModule,
    OneMapRoutingModule,
    NgZorroAntdModule,
    IconsProviderModule,
    ComponentsModule,
    UnifiedMapModule
  ],
  declarations: [
    OneMapComponent,
    MapPanelComponent,
    MapTreeComponent,
    MapRegionComponent,
    MapSearchComponent,
    DialogDamComponent,
    DialogSectionComponent,
    DialogPumpComponent,
    DialogGateComponent,
    BaseInfoComponent,
    MonitorComponent,
    IrrProjectComponent,
    IrrInfoComponent,
    DialogInfoComponent,
    DialogVideoComponent,
    DialogVideo2Component,
    DialogIntakeComponent,
    DialogPicsComponent,
    PanelInfoComponent,
    BaseLayerPickerComponent,
    MonitorMajorComponent,
    MonitorGateComponent,
    MonitorPumpComponent
  ],
  entryComponents: [],
  exports: [
    DialogVideoComponent,
    DialogVideo2Component
  ],
  providers: [OneMapService, PercentPipe, DecimalPipe, DatePipe, MapUiService]
})
export class OneMapModule {}
